Systems for automated trading of securities need to be fast, reliable, and flexible. Delays in execution of orders for securities affect different investors differently. Viewed according to their interest in speed of execution, investors can be classified in three broad categories: traditional investors, hyperactive investors, and professional traders. Traditional investors trade approximately once a month. Traditional investors are interested in long term investment. Traditional investors may have very little concern with speed of execution because traditional investors, intending to hold a stock for months or years, often are perfectly happy with any price in a stock's daily trading range.
Hyperactive investors are serious hobbyists or enthusiasts rather than professional investors. They do not earn their living exclusively from investing. They have other professions or occupations, but they are focally interested in the process of investing. Hyperactive investors trade approximately once daily, about twenty times more often than traditional investors. Hyperactive investors are often interested in popular stocks in which they may remain invested for relatively short periods of time, perhaps only a few days or hours. In addition, hyperactive investors, being the informed enthusiasts that they are, are increasingly aware of the high performance available to professional traders in automated systems for trading securities. Hyperactive investors therefore increasingly demand high speed of execution of orders for securities.
Professional traders are full-time, individual, professional securities traders, including so-called ‘day traders.’ Professional traders make as many as thirty to fifty trades a day, perhaps fifty times as many trades as hyperactive investors and a thousand times as many as traditional investors. Professional traders may account for as much as fifteen percent of the trading volume on Nasdaq. For professional traders, speed of execution is a matter of financial survival, crucially important. A delay in execution of even a few seconds can cause a loss for a professional trader because markets can change so quickly. When a professional trader enters an order, the order must be executed as quickly as possible.
One of the potential bottlenecks in systems for automated trading of securities is the data communications connections between broker-dealer systems and markets to which broker-dealer systems send orders for securities. Broker-dealer systems receive orders from customers, send the orders to markets, receive responses from markets, and communicate order status to customers. Orders are sent to markets through data communications paths that include a port at one terminus of the path and a market at the other. Responses are received from markets through paths. A market can be connected to a broker-dealer system through more than one port. If a path partially fails or is slowed for mechanical or electrical reasons, the broker-dealer system can be slowed. If a path fails completely, the broker-dealer system can be disabled with regard to the market served by that path.
To improve speed, flexibility, and reliability, broker-dealers add additional paths to their systems, so that more than one path is available from a broker-dealer to a particular market. Adding paths improves overall throughput of orders and responses to and from markets and reduces the risk of being completely disabled with respect to a market if a path fails. System performance can still vary widely, however, from the point of view of a customer whose order is sent through a path that is slowed or stopped by overload or mechanical failure.
The data communications systems in systems for automated trading of securities are typically assumed to demonstrate discrete failure of components or complete failure of entire subsystems. It is commonly assumed, for example, that if a path for communications fails, the path will fail completely. Paths can fail, however, in a gradual manner, degrading in performance until the path is practically useless despite not evidencing complete failure. Systems designed only to detect complete failure may do a poor job of detecting and administering gradual failures of components or subsystems.
Methods and systems are therefore needed for selecting paths dependent upon path availability, path performance, and optionally other qualities of paths, as well as detecting problems with paths, such as gradual deterioration of performance, so that other paths can be selected for sending order to markets when it would be helpful to do so in support of the overall quality of performance in broker-dealer systems.